package com.songlanyun.modules.message.model.to;

import com.fasterxml.jackson.core.type.TypeReference;
import com.songlanyun.common.drive.ValueObject;
import com.songlanyun.common.enums.PrivateMessageConstant;
import com.songlanyun.common.enums.SysConstant;
import com.songlanyun.common.exception.RRException;
import com.songlanyun.common.utils.custom.ClassConvertUtils;
import com.songlanyun.modules.message.model.*;
import lombok.Data;

/**
 * app站内消息
 *
 * @author wuchao
 * @email sunlightcs@gmail.com
 * @date 2021-03-04 16:05:09
 */
@Data
public class PrivateMessageTO implements ValueObject {

    public PrivateMessageTO() {
    }

    public PrivateMessageTO(Long userId, PrivateMessageConstant.MessageType type, IMessageBody messageBody, String remark) {
        this.userId = userId;
        this.type = type;
        this.messageBody = messageBody;
        this.remark = remark;
    }

    /**
     * 会员ID
     */
    private Long userId;

    /**
     * 消息类型
     * 0：活动消息
     * 1：支付消息
     * 2：物流消息
     * 3：售后消息
     * 4：互动消息
     */
    private PrivateMessageConstant.MessageType type;

    /**
     * 消息内容
     */
    private String msg;

    /**
     * 消息体
     */
    private IMessageBody messageBody;

    /**
     * 消息备注
     */
    private String remark;

}
